A virtual machine (VM), such as VMware ESX or Microsoft Hyper-V Server, enables business processes through virtualized systems. Virtual machines may be backed up, copied, or migrated among different data stores and host computers. In the event of a disruption, conventional systems restore a virtual machine from a backup copy.
The Recovery Time Objective (RTO) of an application is determined by the time taken to restore a business process to full functionality after a disaster or other disruption. RTO is sometimes determined by the time it takes to restore the relevant data from a backup copy, which can take several hours or longer depending on the amount of data to be restored.
Some conventional systems attempt to reduce RTO by running the virtual machine directly from its backup copy while simultaneously restoring data from the backup copy to the production server. However, these conventional systems suffer from performance degradation because the backup copy must be shared between both the restoration process and the virtual machine execution process. Additionally, further performance degradation to either process will result depending on whether the backup data store is optimized fast serial memory access beneficial to the restoration process or to fast random memory access beneficial to the execution process.
In view of the foregoing, it may be understood that there may be significant problems and shortcomings associated with traditional virtual machine recovery technologies.